Firebase iOS (3) 登入主頁完成篇


Posted by quinhsieh on 2022-03-07

開發環境

此篇使用Xcode版本13.0(13A233)SwiftUI

介紹開始

延續上篇 Firebase iOS (2) 實作帳號登入篇
登入畫面實在不友善,在此介紹有主頁及登入頁面的寫法

首先新增兩個頁面如下,左邊為主頁面mainPage.swift,右邊為登入頁面login.swift
Xcode -> File -> New -> File... -> iOS -> SwiftUI View

mainPage.swift加入程式碼

VStack {
    Text("Hello, world!")
    Button("Logout") {
    }
}

將原本在ContentView.swift新增的內容搬移到login.swift
並且加入灰色背景

ZStack {
    Color.gray.ignoresSafeArea(.all)
    VStack {
        TextField("Email", text: $email)
        ...
    }
    .padding()
}

畫面做完後需要新增一個環境來記錄登入的狀態userData.swift
Xcode -> File -> New -> File... -> iOS -> Swift File
新增程式碼:

class userData: ObservableObject {
@Published var isNeedAuth : Bool = true
}

isNeedAuth是用來判斷是否需要登入的狀態true為需要
將狀態新增到mainPage.swift

Button("Logout") {
    userdata.isNeedAuth = true
}

login.swift

func login() {
    ...
    print("success")
    userdata.isNeedAuth = false
    ...
}

最後在ContentView.swift加入主頁就完成了!

var body: some View {
            mainPage()
            .fullScreenCover(isPresented: $userdata.isNeedAuth){
                login()
            }
    }

#Firebase #iOS #SwiftUI







Related Posts

How to Launch an Amazon EC2 Instance

How to Launch an Amazon EC2 Instance

Day07 git 畫龍點睛

Day07 git 畫龍點睛

記錄做 shell script 作業參考的網站

記錄做 shell script 作業參考的網站


Comments